/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package agencia.controller;

import agencia.LugarTuristico;
import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author elvis
 */
public class LugarTuristicoController {

    private List<LugarTuristico> lugaresTuristicos;    
    private static int CODIGO_LUGAR = 1;

    public List<LugarTuristico> getLugaresTuristicos() {
        return lugaresTuristicos;
    }
    public void setLugaresTuristicos(List<LugarTuristico> lugaresTuristicos) {
        this.lugaresTuristicos = lugaresTuristicos;
    }
    
    public LugarTuristicoController(){
        
        TipoLugarcontroller lugarcontroller = new TipoLugarcontroller();
        lugaresTuristicos = new ArrayList<LugarTuristico>();
        lugaresTuristicos.add(new LugarTuristico(codigoNuevoLugar(), "Bahia Paracas", lugarcontroller.obtenerTipoLugar(2)));
        lugaresTuristicos.add(new LugarTuristico(codigoNuevoLugar(), "La catedral", lugarcontroller.obtenerTipoLugar(2)));
        lugaresTuristicos.add(new LugarTuristico(codigoNuevoLugar(), "Istas Ballestas", lugarcontroller.obtenerTipoLugar(2)));
        lugaresTuristicos.add(new LugarTuristico(codigoNuevoLugar(), "Puerto", lugarcontroller.obtenerTipoLugar(2)));
        lugaresTuristicos.add(new LugarTuristico(codigoNuevoLugar(), "Playa Paracas", lugarcontroller.obtenerTipoLugar(2)));
        lugaresTuristicos.add(new LugarTuristico(codigoNuevoLugar(), "Hotel Paracas", lugarcontroller.obtenerTipoLugar(3)));
        lugaresTuristicos.add(new LugarTuristico(codigoNuevoLugar(), "Lineas de Nazca", lugarcontroller.obtenerTipoLugar(1)));
    }

    public List<LugarTuristico> listaLugaresTuristicos() {
        return lugaresTuristicos;
    }

    public List<LugarTuristico> listaLugaresTuristicos(String tipolugar) {
        List<LugarTuristico> lista = new ArrayList<LugarTuristico>();
        for(LugarTuristico lugar : getLugaresTuristicos()){
            if(lugar.getTipoLugarTuristico().getNombre().equals(tipolugar) ){
                lista.add(lugar);
            }
        }
        return lista;
    }

    public int codigoNuevoLugar(){
        return CODIGO_LUGAR++;
    }
    public void nuevoLugarTuristico(String nombre,String tipo){
        TipoLugarcontroller lugarcontroller = new TipoLugarcontroller();
        getLugaresTuristicos().add(new LugarTuristico(codigoNuevoLugar(), nombre, lugarcontroller.obtenerTipoLugar(tipo)));
    }
    public void modificarLugarturistico(int codigo, String nombre){
        LugarTuristico lugar = obtenerLugarturistico(codigo);
        lugar.setNombre(nombre);
    }
    public LugarTuristico obtenerLugarturistico(int codigo){
        for(LugarTuristico lugar : getLugaresTuristicos()){
            if(lugar.getCodigo()==codigo){
                return lugar;
            }
        }
        return null;
    }

    
}
